FPU (Floating Point Unit) বা কোপ্রসেসর কম্পিউটারে ভাসমান বিন্দু গাণিতিক অপারেশনের জন্য ব্যবহৃত হয়। Assembly Language প্রোগ্রামিংয়ে FPU ব্যবহারের সময় বিভিন্ন ধরনের ব্যতিক্রম বা Exceptions ঘটতে পারে, যা অপারেশন সঠিকভাবে সম্পন্ন করতে বাধা দেয়। এ কারণে FPU Exception Handling এবং Error Management গুরুত্বপূর্ণ।
FPU Exception Handling:
Exception Handling-এর পদ্ধতি:
Status Word
রেজিস্টার ব্যবহৃত হয়, যা বিভিন্ন ফ্ল্যাগ সংরক্ষণ করে। এর মাধ্যমে ব্যতিক্রম চিহ্নিত করা যায়।Control Word
রেজিস্টারটি ব্যবহৃত হয় বিভিন্ন Exception Mask করতে এবং নির্দিষ্ট ব্যতিক্রম পরিচালনা করতে।উদাহরণ:
FINIT ; FPU ইনিশিয়ালাইজ করা
FLD ST(0) ; স্ট্যাকের শীর্ষে একটি ভাসমান বিন্দু লোড করা
FDIV ST(1), ST(0) ; শূন্য দ্বারা ভাগ করার চেষ্টা (Divide by Zero Exception)
FSTSW AX ; FPU Status Word রেজিস্টার থেকে ফ্ল্যাগগুলি AX রেজিস্টারে লোড করা
Error Management:
FNSTSW
(Status Word সংরক্ষণ) এবং FCLEX
(FPU ব্যতিক্রম ফ্ল্যাগ ক্লিয়ার করা) ব্যবহার করে।উদাহরণ:
MOV AX, [ControlWord] ; Control Word রেজিস্টার সেট করা
OR AX, 0200h ; Precision Exception মাস্ক করা
FLDCW AX ; Control Word রেজিস্টারে নতুন মান লোড করা
Status Word
-এর নির্দিষ্ট বিট চেক করে ব্যতিক্রম চিহ্নিত করা হয়।FCLEX
নির্দেশনা ব্যবহার করে FPU ফ্ল্যাগগুলি ক্লিয়ার করা যায়।সারসংক্ষেপ
FPU Exception Handling এবং Error Management Assembly Language প্রোগ্রামিংয়ে অত্যন্ত গুরুত্বপূর্ণ কারণ ভাসমান বিন্দু অপারেশনগুলিতে ব্যতিক্রম বা ত্রুটি ঘটে যেতে পারে। FPU Exceptions চিহ্নিত করতে Status Word
এবং Exceptions মাস্ক ও নিয়ন্ত্রণ করতে Control Word
ব্যবহৃত হয়। সঠিক Exception Handling এবং Error Management-এর মাধ্যমে প্রোগ্রাম আরো নির্ভরযোগ্য এবং নির্ভুলভাবে কাজ করে।
common.read_more